﻿using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ZK.Common;

namespace BLLCommon
{
    public class CSConfigH
    {
        /// <summary>
        /// 读取配置文件并赋值
        /// </summary>
        /// <returns></returns>
        //public static bool ReadMyconfigM(int stationId = 1)
        //{
        //    try
        //    {
        //        if (stationId == 1)
        //        {
        //            stationId = Convert.ToInt32(Models.ProjectHelper.terminalPc.id);
        //        }
        //        var res = InterfaceServer.WebApiServer.csConfigGetOne(stationId);
        //        if (res == null || res.code != 200)
        //        {
        //            return false;
        //        }
        //        Myconfig.myconfigValue = Newtonsoft.Json.JsonConvert.DeserializeObject<Myconfig.MyconfigM>(res.data.str);

        //        Myconfig.myconfigValue.id = res.data.id;
        //        //if (!File.Exists("config.json"))
        //        //{
        //        //    File.Create("config.json");
        //        //}
        //        //string str = File.ReadAllText("config.json");
        //        //var res = Newtonsoft.Json.JsonConvert.DeserializeObject<Myconfig.MyconfigM>(str);
        //        //if (res != null)
        //        //{
        //        //    Myconfig.myconfigValue = res;
        //        //}
        //        return true;
        //    }
        //    catch (Exception ex)
        //    {
        //        Common.Log4.LogManage.WriteErr(ex.ToString());
        //        //MessageBox.Show("CAN卡配置有误！");
        //        return false;
        //    }
        //}

        public static bool ReadMyconfigLocalM()
        {
            try
            {
                if (!File.Exists("config.json"))
                {
                    File.Create("config.json");
                }
                string str = File.ReadAllText("config.json");
                var res = Newtonsoft.Json.JsonConvert.DeserializeObject<Myconfig.MyconfigMLocal>(str);
                if (res != null)
                {
                    Myconfig.myconfigValueLocal = res;
                }
                return true;
            }
            catch (Exception ex)
            {
                ZK.Common.Log4.LogManage.WriteErr(ex.ToString());
                //MessageBox.Show("CAN卡配置有误！");
                return false;
            }
        }

        /// <summary>
        /// 写我的配置文件
        /// </summary>
        /// <returns></returns>
        //public static bool WhriteMyconfigM()
        //{
        //    try
        //    {
        //        var res = InterfaceServer.WebApiServer.csConfigAdd(new Models.CSConfigM()
        //        {
        //            id = Myconfig.myconfigValue.id,
        //            stationId = Convert.ToInt32(Models.ProjectHelper.terminalPc.id),
        //            str = Newtonsoft.Json.JsonConvert.SerializeObject(Myconfig.myconfigValue)
        //        });
        //        if (res == null || res.code != 200)
        //        {
        //            return false;
        //        }
        //        //if (!File.Exists("config.json"))
        //        //{
        //        //    File.Create("config.json");
        //        //}
        //        //File.WriteAllText("config.json", Newtonsoft.Json.JsonConvert.SerializeObject(Myconfig.myconfigValue));

        //        return true;
        //    }
        //    catch (Exception ex)
        //    {
        //        Common.Log4.LogManage.WriteErr(ex.ToString());
        //        //MessageBox.Show("CAN卡配置有误！");
        //        return false;
        //    }
        //}
        public static bool WhriteMyconfigLocalM()
        {
            try
            {
                if (!File.Exists("config.json"))
                {
                    File.Create("config.json");
                }
                File.WriteAllText("config.json", Newtonsoft.Json.JsonConvert.SerializeObject(Myconfig.myconfigValueLocal));

                return true;
            }
            catch (Exception ex)
            {
                ZK.Common.Log4.LogManage.WriteErr(ex.ToString());
                //MessageBox.Show("CAN卡配置有误！");
                return false;
            }
        }
    }
}
